home *** CD-ROM | disk | FTP | other *** search
/ The Original Shareware 1.1 / The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso / 38 / alcv14.zip / ALCHEMY.DOC next >
Text File  |  1991-03-20  |  88KB  |  2,264 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.                                     Image Alchemy
  12.  
  13.  
  14.                                      Version 1.4
  15.  
  16.  
  17.  
  18.                                    March 18, 1991
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.                                     User's Manual
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.                                         TM
  41.                            Image Alchemy   was written by
  42.  
  43.                                  Marcos H. Woehrmann
  44.                                  Allan N. Hessenflow
  45.                                    David Kettmann
  46.  
  47.  
  48.  
  49.  
  50.                   Copyright (c) 1990-1991 by Handmade Software, Inc.
  51.                        All Rights Reserved   15951 Los Gatos Blvd., Suite 7
  52.                                              Los Gatos, CA  95032
  53.                                              +1 408 356-4143 (Fax)
  54.                                              +1 408 358-1292 (Voice)
  55.  
  56.                                              UUCP: hsi@netcom.COM
  57.                                                or: apple!netcom!hsi
  58.                                              Cserve: 71330,3136
  59.  
  60.  
  61.  
  62.  
  63.                         Shareware Fundamentals and Specifics
  64.  
  65.           We encourage you to freely copy and distribute the shareware
  66.           version of Image Alchemy provided that:
  67.  
  68.                1.   No fee beyond normal media, duplication, and shipping
  69.                     costs may be charged.
  70.  
  71.                2.   Shareware vendors and computer user groups who charge
  72.                     less than $7.00 per disk may distribute Image Alchemy,
  73.                     but Handmade Software must be supplied with a copy of
  74.                     the first catalogue issue offering each new revision of
  75.                     Image Alchemy.
  76.  
  77.                3.   Others may only distribute Image Alchemy with the
  78.                     written permission of Handmade Software.  In all cases,
  79.                     it must be clearly stated to the purchaser that he or
  80.                     she is receiving an unregistered copy of a shareware
  81.                     product
  82.  
  83.                4.   The distribution files must be distributed in their
  84.                     original forms.  The unrestricted version may not be
  85.                     distributed.
  86.  
  87.  
  88.           If you received Image Alchemy as shareware (i.e. you downloaded
  89.           from a bulletin board, you received it from a friend, it came
  90.           with some hardware you purchased, or you bought a disk from a
  91.           software library), and if you use it beyond a two week trial
  92.           period, you must register the program using the accompanying
  93.           order form.
  94.  
  95.           For the $79.95 registration fee, you will receive the current,
  96.           retail version of Image Alchemy without the 640 by 480 image size
  97.           restriction.  You will be notified of significant upgrades to
  98.           Image Alchemy, you will be placed on a mailing list to receive
  99.           information about future products from Handmade Software, and you
  100.           will be entitled to phone and email support.
  101.  
  102.           Registered users are entitled to minor updates for a nominal fee
  103.           (not to exceed $5.00 for disks or $20.00 for tapes).  Registered
  104.           users are also entitled to major updates at a substantially
  105.           reduced price.
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 2
  118.  
  119.  
  120.  
  121.                                What is Image Alchemy?
  122.  
  123.           Image Alchemy is a software utility that has two functions in
  124.           life:
  125.  
  126.           First, Image Alchemy performs JPEG compression.  This is a new
  127.           standard for image compression that can achieve much higher
  128.           compression ratios than conventional compression techniques.  It
  129.           achieves this high compression ratio by not entirely preserving
  130.           the original image (this is referred to as "lossy" compression).
  131.           For further information see the What is JPEG Compression section
  132.           below.  Image Alchemy is the first shareware program to perform
  133.           JPEG compression and decompression.
  134.  
  135.           Second, Image Alchemy converts between various graphics file
  136.           formats.  Image Alchemy understands a wide variety of file
  137.           formats including industry standards such as GIF and TIFF.
  138.           Currently we support 15 different formats, and we are always
  139.           adding new formats; in fact, our goal is to have Image Alchemy be
  140.           able to read and write every type of graphic file in the world.
  141.  
  142.  
  143.                                 Hardware Requirements
  144.  
  145.           IBM PC:
  146.  
  147.           At least an 80286 IBM PC AT or clone.
  148.  
  149.           At least 380k of free memory (Image Alchemy will run much faster
  150.           if you have more than 400k of memory available).  Some
  151.           conversions and some images require more memory (Alchemy will
  152.           attempt to use all available system memory, so if you get out of
  153.           memory errors or warnings try removing as many TSRs as you can).
  154.  
  155.           A hard drive with at least as much free space as three times the
  156.           size of the image being converting (i.e. a 640x480 image will
  157.           require approximately 1 meg of free space).
  158.  
  159.           A VGA or 8514/A board, if you want to view images (tested VGA
  160.           boards include those with the Paradise, Everex, Trident, Video 7,
  161.           and the Tseng Labs Chipsets, tested 8514/A boards include IBM and
  162.           those with the Western Digital Chipset)
  163.  
  164.           MS-DOS or PC-DOS 3.x or greater
  165.  
  166.  
  167.           Sun:
  168.  
  169.           A SPARC or 680x0 equipped Sun (either a Sun 3, Sun 4,
  170.           SPARCstation, or SPARCserver).
  171.  
  172.           SunOS 4.0.3 or greater
  173.  
  174.  
  175.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 3
  176.  
  177.  
  178.  
  179.                                     Introduction
  180.  
  181.  
  182.           To install Image Alchemy copy the file alchemy.exe (for MS-DOS
  183.           users) or alchemy (for Sun users) to your hard disk.  There are
  184.           no support files or configuration files which need to be copied.
  185.           Image alchemy comes with a sample JPEG compressed image,
  186.           sample.jpg.  You might want to copy it to your hard drive to
  187.           follow along with the examples below.
  188.  
  189.  
  190.           To use Image Alchemy:
  191.  
  192.           alchemy -option [-option, ...] inputFileName [outputFileName]
  193.  
  194.  
  195.           The inputFileName is any valid file name (including an optional
  196.           path).  The outputFileName is optional;  if it is not specified
  197.           Image Alchemy generates one by substituting an appropriate
  198.           extension to the input file name.  If the outputFileName does not
  199.           include an extension one will be added (you may prevent this by
  200.           appending a period "." to the outputFileName).
  201.  
  202.           Options are preceded by a dash ("-"). Those options which take a
  203.           parameter may have it immediately following the option or
  204.           separated by a space (for example, either -c128 or -c 128 is
  205.           acceptable).
  206.  
  207.           The only option that is required is the output file format (or
  208.           the viewing option, for IBM PC users).  Image Alchemy will make
  209.           reasonable decisions for all of the other options.
  210.  
  211.           The options are documented below.  The order of the options is
  212.           only significant in the case of the -z, -D, and -V options.  The
  213.           options can appear anywhere in the command line (certain options
  214.           take parameters; in this case the parameters must follow the
  215.           option).  The case of the options is significant.
  216.  
  217.           Three options which are unique in their operation are -z, -D, and
  218.           -V.  These options all mean different things depending on how
  219.           many times they are specified (for example, -D 150, has a
  220.           different meaning then -D 150 -D 150).  This isn't a problem in
  221.           actual usage, but is something you should be aware of.
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 4
  234.  
  235.  
  236.  
  237.                                 Image Alchemy Options
  238.  
  239.  
  240.           Information:
  241.  
  242.  
  243.                -h   Help.  Display command summary.
  244.  
  245.                -?   Display about information.  Includes support, ordering,
  246.                     and version information.
  247.  
  248.  
  249.           Output file options (details on each of the supported file
  250.           formats can be found below in the Details on Supported File
  251.           Formats section):
  252.  
  253.                -a compressionType
  254.                     Generate a tArga file.  Optionally specify the
  255.                     compression type used to store the file.
  256.                     Compression types supported are:
  257.                          0:Raw
  258.                          1:RLE
  259.                     The default is RLE Compression.
  260.  
  261.                -e previewType
  262.                     Generate an Encapsulated PostScript file.  Optionally
  263.                     specify the preview type.  Preview types supported are:
  264.                          0:None
  265.                          1:Device Independent
  266.                     The default is Device Independent
  267.  
  268.                -g   Generate a Gif file.
  269.  
  270.                -i   Generate an Ilbm file (also known as an Iff file, also
  271.                     known as an LBM file).
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 5
  292.  
  293.  
  294.  
  295.                -j[a] quality
  296.                     Generate a Jpeg file.  Optionally specify the use of
  297.                     Arithmetic coding and the quality.
  298.                     If you specify an a immediately after the -j (as in -
  299.                     ja), Alchemy will generate a JPEG file compressed using
  300.                     Arithmetic encoding instead of the default Huffman
  301.                     encoding (see the JPEG section in the Supported File
  302.                     Formats section below for more information).
  303.                     Quality may vary between 1 and 100.  The default is 32.
  304.                     The higher the number the higher the quality of the
  305.                     image and the lower the compression ratio.  Quality
  306.                     factors below 10 will produce images with significant
  307.                     loss of quality.
  308.                     Since JPEG compression was designed for use with
  309.                     continuous tone images (such as produced by a scanner
  310.                     or digitizer), poor results can be expected when
  311.                     compressing line drawings.  Alchemy will not compress
  312.                     files which have less than 32 colours in them unless
  313.                     you explicitly override this by using the -O option.
  314.  
  315.                -k   Generate a PBM/PGM/PPM file.
  316.  
  317.                -l   Generate a paLette file.
  318.  
  319.                -m   Generate a Macintosh pict file.
  320.  
  321.                -n   Generate an SilicoN Graphics Image file
  322.  
  323.                -p   Generate a Pcx file.
  324.  
  325.                -P   Generate a PCL file.
  326.  
  327.                -r   Generate a Raw file.
  328.  
  329.                -s   Generate a Sun raster file.
  330.  
  331.                -t compressionType
  332.                     Generate a Tiff file.  Optionally specify the TIFF
  333.                     compression type used to store the file.
  334.                     Compression types supported are:
  335.                          0:None
  336.                          1:LZW
  337.                          2:PackBits
  338.                          3:Group III Fax
  339.                          4:Group IV Fax
  340.                          9:PICIO
  341.                          10:SGI RLE
  342.                     The default is LZW Compression.
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 6
  350.  
  351.  
  352.  
  353.                -w compressionType
  354.                     Generate a Windows BMP file.  Optionally specify the
  355.                     BMP compression type used to store the file.
  356.                     Compression types supported are:
  357.                          0:None
  358.                          1:RLE
  359.                     The default is None.
  360.  
  361.  
  362.           Palette Options:
  363.  
  364.                -24  Specify that the output file should be 24 bit (true
  365.                     colour).  This is the default for JPEG files (which
  366.                     must be 24 bit) and is not allowed for GIF and PCX
  367.                     files (which must be paletted).  The other file
  368.                     formats, which may be either 24 or 8 bit, default to 24
  369.                     bit if the input file is 24 bit (certain file formats
  370.                     may only be 8 bits if the images are grey scale, in
  371.                     that case Alchemy will automatically switch to true
  372.                     colour for output).
  373.  
  374.                -8   Specify that the output file should be paletted (up to
  375.                     8 bits).  This is the default for GIF and PCX files and
  376.                     is not allowed for JPEG files.  The actual number of
  377.                     bits is determined by the -c option (below).  If the
  378.                     input file is true colour the output file will be
  379.                     quantized and dithered (see the -c and -d options
  380.                     below).
  381.  
  382.                -b   Specify that the output file should be grayscale.  If
  383.                     the input is paletted or a -8 is specified, -c can be
  384.                     used to specify the number of gray levels.
  385.  
  386.                -c colours
  387.                     Specify the number of colours for the output file.
  388.                     Only applicable for paletted files (see -8, above).
  389.                     The number of colours may be between 2 and 256.
  390.                     If the input file has a larger number of colours than
  391.                     specified for the output file, the image will be
  392.                     quantized using Heckbert's median cut algorithm and
  393.                     dithered (see -d, below).
  394.                     Converting an image with a large number of colours to a
  395.                     small number of colours (less than 8) may give poor
  396.                     results.
  397.                     For further information on Heckbert's median cut
  398.                     algorithm see the Colour and Dithering section below.
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 7
  408.  
  409.  
  410.  
  411.                -d ditherType
  412.                     Specifies the type of dithering, if any, to apply to
  413.                     the image.
  414.                     DitherType can be:
  415.                          0:None
  416.                          1:Floyd-Steinberg
  417.                          2:Stucki
  418.                          3:Jarvis, Judice, & Ninke
  419.                     The default is Floyd-Steinberg.
  420.                     Floyd-Steinberg is the fastest (except for no
  421.                     dithering) and usually produces the best results.
  422.                     Stucki and Jarvis, Judice, & Ninke both tend to cause
  423.                     an image to appear more grainy on low resolution output
  424.                     devices (such as CRTs).  However they produce better
  425.                     results than Floyd-Steinberg on high-resolution low
  426.                     colour devices such as laser printers.
  427.                     This option only has an effect if the number of colours
  428.                     is being reduced or the image is being remapped to a
  429.                     new palette.  Dithering is used to reduce colour
  430.                     banding in an image caused by the palette not having a
  431.                     perfect match for every colour in the image.  However,
  432.                     dithering does take time and can cause the image to
  433.                     look grainy, so it can be disabled.
  434.                     For further information on dithering see the Colour and
  435.                     Dithering section below.
  436.  
  437.                -E   Convert image for best possible quality viewing using
  438.                     an EGA board and monitor.  This option reduces the
  439.                     palette resolution to 2 bits and automatically
  440.                     specifies the following:  -8 -c16 -z0 -z1 -z0.
  441.                     The -c16 option can be overridden by using an explicit
  442.                     -cn option (but n has to less than 16).
  443.  
  444.                -f filename
  445.                     Match the output to a palette read from a file.  The
  446.                     input image will be remapped to use the palette found
  447.                     in the specified filename.  This can be useful if you
  448.                     are combining several images into a collage or want to
  449.                     match an image to a pre-existing palette.  The
  450.                     resulting image will be dithered (unless you specify no
  451.                     dithering by using the -d option).
  452.  
  453.                -F filename
  454.                     False colour an image using the palette from a file.
  455.                     The input image will be changed to use the palette
  456.                     found in the specified filename but no attempt at
  457.                     picking the best match will be done.  This feature can
  458.                     be used to add false colour to monochrome images.  The
  459.                     output file is not dithered.  Only applicable to
  460.                     paletted input files.
  461.  
  462.  
  463.  
  464.  
  465.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 8
  466.  
  467.  
  468.  
  469.                -u   Use a Uniform Palette.  Instead of using the Heckbert
  470.                     median cut algorithm to generate a palette for the
  471.                     image use a palette with entries which are evenly
  472.                     distributed in the RGB colour cube (actually the cube
  473.                     is distorted because the human eye is not equally
  474.                     sensitive to red, green, and blue).  The advantage of
  475.                     using a uniform palette is that it's fast because a
  476.                     custom palette need not be generated.  However, this is
  477.                     at the expense of image quality since the palette isn't
  478.                     generated based on image content.  When just viewing a
  479.                     true colour image on a paletted display a uniform
  480.                     palette is used.
  481.                     The -c option can be used in conjunction with -u to
  482.                     specify the size of the uniform palette; in that case
  483.                     Image Alchemy will generate a palette with not more
  484.                     than the specified number of colours (but not less than
  485.                     8).  The palette size will not necessarily match the
  486.                     specified size, as the actual size must be the product
  487.                     of three integers, and Alchemy will attempt to pick
  488.                     integers that roughly correspond to the sensitivity of
  489.                     the human eye to red, green, and blue (30%, 59%, and
  490.                     11%).
  491.  
  492.                -z sortType (first usage)
  493.                     Sort the image palette.  This option only has an effect
  494.                     if the palette is being generated by Image Alchemy
  495.                     using Heckbert's median cut algorithm.  SortType can
  496.                     be:
  497.                          0:None
  498.                          1:popularity
  499.                          2:luminance (white to black)
  500.                          3:rgb
  501.                          4:luminance (black to white)
  502.                     The default is None.
  503.                     See below for an example of the -z option.
  504.  
  505.                -z selectionType (second usage)
  506.                     If you specify a Palette sort parameter you may also
  507.                     specify a palette selection parameter.  SelectionType
  508.                     can be:
  509.                          0:mean
  510.                          1:median
  511.                          2:corner
  512.                     The default is mean.
  513.                     See the Colour and Dithering section below for an
  514.                     explanation of these choices.
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 9
  524.  
  525.  
  526.  
  527.                -z swapType (third usage)
  528.                     If you specify both a Palette sort parameter and a
  529.                     Palette selection parameter you may also specify a
  530.                     palette swap parameter.  SwapType can be:
  531.                          0:None
  532.                          1:IBM (colour 0 is black, 7 is white)
  533.                          2:Macintosh (colour 0 is white, 255 is black)
  534.                          3:Sun (colour 0 is white, 1 is black)
  535.                     The default is based on the file type being written out
  536.                     (IBM for Gif, Macintosh for Mac PICT, Sun for Sun
  537.                     Raster, and None for all others).
  538.  
  539.                     Example:  for the -z option(s):
  540.                          -z4 -z0 -z3  :sort colours by luminance, use the
  541.                     mean of the Heckbert box for the colour, and move the
  542.                     colours around so that the lightest colour is colour 0
  543.                     and the darkest colour is colour 1.
  544.  
  545.                     Note that it is not possible to specify a swapType
  546.                     without first specifying both a sortType and a
  547.                     selectionType.  See the Colour and Dithering section
  548.                     below for more information.
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 10
  582.  
  583.  
  584.  
  585.           Misc Options:
  586.  
  587.                -D aspectRatio
  588.                     Specify aspect ratio for the output image.  The aspect
  589.                     ratio of an image is the ratio of the width of a single
  590.                     pixel to the height of a single pixel.  This option
  591.                     lets you specify this ratio when writing a file or
  592.                     displaying an image (the only file types which support
  593.                     aspect ratio are JPEG, TIFF, Raw, Mac PICT, ILBM, and
  594.                     Targa; specifying this option when writing out other
  595.                     files will have no effect).  Ordinarily aspect ratio is
  596.                     specified as two numbers separated by a colon, for
  597.                     example 1:1 or 1:1.2.  However to simplify the user
  598.                     interface Alchemy expects a single number which is the
  599.                     percentage of the width of a pixel to its height (so to
  600.                     specify 1:1.2 use -D 83, since 100/1.2 is 83).
  601.  
  602.                     Example: if you are converting a 640x350 IBM EGA PCX
  603.                     image (which has an aspect ratio of 35:48) to a TIFF
  604.                     image you can say -D 73 (73 is 100/48*35) and the TIFF
  605.                     image will have the correct aspect ratio and an
  606.                     intelligent TIFF reader will make use of the
  607.                     information.  Alchemy attempts to preserve aspect ratio
  608.                     whenever possible, but since so few file formats have
  609.                     aspect ratio information this hardly ever happens.
  610.  
  611.                     This option can also be used when displaying an image
  612.                     on an IBM PC.  See the Display options section below
  613.                     for more information.
  614.  
  615.  
  616.                -D dotsPerInchX -D dotsPerInchY
  617.                     Specify image resolution in dots per inch.  You must
  618.                     specify both dotsPerInchX and dotsPerInchY, even if
  619.                     they are the same.  This option is ignored when writing
  620.                     a file format which does not have image resolution (the
  621.                     only have formats which include image resolution are
  622.                     JPEG, Raw, TIFF, and Mac PICT).  Reasonable values to
  623.                     use for dotsPerInch include:  72 (the resolution of a
  624.                     13 inch monitor display 640x480) and 300 (the
  625.                     resolution of a laser printer).  Alchemy will preserve
  626.                     this information when converting files whenever
  627.                     possible.
  628.  
  629.                     Note that it is not possible to specify both an aspect
  630.                     ratio and a dots per inch value for an image.  This is
  631.                     because specifying a dots per inch value automatically
  632.                     implies an aspect ratio.  And in fact there are no file
  633.                     formats which support independent aspect ratio and dots
  634.                     per inch values.
  635.  
  636.  
  637.  
  638.  
  639.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 11
  640.  
  641.  
  642.  
  643.                -o   Overwrite output file if it exists.  Image Alchemy will
  644.                     not overwrite an existing file unless the -o option is
  645.                     specified.
  646.  
  647.                -O   Override JPEG compression warning.  See the -j option
  648.                     above for information.
  649.  
  650.                -q   Apply Smoothing when decompressing a JPEG image.
  651.                     Because JPEG compression works on 8x8 pixel blocks
  652.                     there tend to be discontinuities at the edges of these
  653.                     blocks producing block artifacts.  Smoothing attempts
  654.                     to reduce these artifacts.  Smoothing is really only
  655.                     necessary at very low quality settings (Q less than
  656.                     10);  even then the effects are not particularly
  657.                     significant.
  658.  
  659.                -x   Display image statistics.  Displays image type, size,
  660.                     number of colours, aspect ratio, and compression ratio.
  661.                     Can not be combined with other options.
  662.  
  663.                -X pixels
  664.                     Change the horizontal dimension of the image to the
  665.                     specified number of pixels.  Currently Alchemy does
  666.                     simple pixel replication or elimination.  Future
  667.                     versions will allow more complex types of scaling in
  668.                     both dimensions.
  669.  
  670.                -Y pixels
  671.                     Change the vertical dimension of the image to the
  672.                     specified number of pixels.  Currently Alchemy does
  673.                     simple pixel replication or elimination.  Future
  674.                     versions will allow more complex type of scaling.
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 12
  698.  
  699.  
  700.  
  701.           Display options (IBM PC only):
  702.  
  703.           In addition to the file conversion options listed above Image
  704.           Alchemy can display images on a VGA or 8514/A equipped IBM PC.
  705.  
  706.           The current version of Image Alchemy supports 320x200x256,
  707.           640x400x256, and 640x480x256 display modes for VGA and
  708.           640x480x256, 1024x768x256, and 1280x1024x256 display modes for
  709.           8514/A (the exact resolutions supported depend on the model board
  710.           installed).
  711.  
  712.           Because of various incompatibilities between different VGA boards
  713.           640x400x256 and/or 640x480x256 mode is not supported on all
  714.           boards and has not been tested on all boards that are supported.
  715.           The 320x200x256 mode is a standard VGA IBM mode and should work
  716.           on all VGA boards.  VGA boards which have been tested for the the
  717.           higher resolution modes include Paradise, Tseng Labs 3000 & 4000,
  718.           Video 7, Trident, and Everex chipset based VGA Boards.  Support
  719.           for others is included but has not been tested and may be
  720.           accessed through the -vv option (see below).
  721.  
  722.           Image Alchemy requires AI to be installed to use 8514/A displays
  723.           which aren't based on the Western Digital chipset (Alchemy should
  724.           also be able to display on AI compatible boards which are not
  725.           8514/A (such as 340x0 based boards), but this has not been
  726.           tested).  For Western Digital based 8514/A boards, no driver is
  727.           required.
  728.  
  729.           Alchemy checks for a display board in the following order:
  730.           Western Digital 8514/A, AI based 8514/A, extended VGA, standard
  731.           VGA.  Alchemy automatically uses the lowest resolution mode which
  732.           will display the entire picture.
  733.  
  734.           The image will be centered in the display (for images which are
  735.           larger than the display Alchemy will center the display in the
  736.           picture).
  737.  
  738.  
  739.  
  740.                -v horizontalResolution
  741.                     View file using high resolution mode (640x400x256 or
  742.                     640x480x256 for VGA, up to 1280x1024x256 for 8514/A).
  743.                     If displaying on a Western Digital chipset 8514/A an
  744.                     optional parameter may follow the -v command.  This
  745.                     parameter specifies horizontal resolution and may be
  746.                     either 640, 1024, or 1280.  The default is to use the
  747.                     lowest resolution which can fit the entire image.  If
  748.                     the image is true colour, a uniform palette will be
  749.                     used and the image will be dithered (dithering may be
  750.                     disabled by use of the -d option, see above).  See the
  751.                     Colour and Dithering section below.
  752.  
  753.  
  754.  
  755.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 13
  756.  
  757.  
  758.  
  759.                -vv  Force view.  If Image Alchemy can identify the VGA
  760.                     board you have installed and has support for it, but
  761.                     has not been tested with it, you will be given the
  762.                     option of rerunning the program with the -vv option
  763.                     instead of the -v option.  This will force viewing of
  764.                     the file.
  765.                     Please contact Handmade Software if you use this option
  766.                     and viewing works correctly on your VGA board so that
  767.                     we can add it to the list of tested boards.
  768.  
  769.                -V   View using 320x200x256 mode.  This is a standard VGA
  770.                     mode which works on all VGA boards (including those
  771.                     built-in to PS/2 computers).  This command is most
  772.                     useful combined with the -V option below.
  773.  
  774.                -V   Scale image to fit on monitor and correct aspect ratio.
  775.                     After specifying the view type, -v, -vv, or -V, you may
  776.                     also specify that the image should be scaled to fit on
  777.                     the display by using a second -V option (which means
  778.                     you end up typing -v -V, -vv -V, or -V -V).
  779.  
  780.                     This command will scale the image and correct the
  781.                     aspect ratio of the image by removing rows and/or
  782.                     columns from the image.
  783.  
  784.                     Note that this option can also be useful for displaying
  785.                     images which are not larger than the screen but which
  786.                     have an aspect ratio different than the display.
  787.  
  788.                     Also note that Alchemy assumes that the aspect ratio of
  789.                     a display pixel is 1:1 when in 640x480 mode and 1:1.2
  790.                     when in 640x400 mode or 320x200 mode.  Furthermore
  791.                     Alchemy assumes that the aspect ratio of pixels in
  792.                     640x400 and 320x200 images is 1:1.2 and the aspect
  793.                     ratio of pixels in 640x350 images is 35:48.  You can
  794.                     override any of these assumptions with the -D option
  795.                     (for a further discussion of aspect ratio see the -D
  796.                     command, above).
  797.  
  798.                     Don't worry if this is confusing;  in practice Alchemy
  799.                     deals with everything automatically if you use the
  800.                     second -V option (there is however a problem with
  801.                     display 320x400 IFF and HAM files, see the Answers to
  802.                     Frequently Asked Questions section below for more
  803.                     information).
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 14
  814.  
  815.  
  816.  
  817.                                       Examples
  818.  
  819.  
  820.           To convert the JPEG file sample.jpg to a Targa file called
  821.           sample.tga use the following command:
  822.  
  823.           alchemy -a sample.jpg
  824.  
  825.  
  826.           To convert the 24 bit Targa file sample.tga to a 256 colour Gif
  827.           file called new.gif:
  828.  
  829.           alchemy -g sample.tga new.gif
  830.  
  831.  
  832.           To convert the 256 colour Gif file, new.gif, to a 64 colour PCX
  833.           file called new.pcx:
  834.  
  835.           alchemy -p -c64 new.gif
  836.  
  837.  
  838.           To view the Gif file new.gif (only applicable on IBM PCs with
  839.           appropriate VGA board):
  840.  
  841.           alchemy -v new.gif
  842.  
  843.  
  844.           To convert sample.jpg to a black and white, two colour GIF file
  845.           use a text editor to create a file called BW.PAL which contains
  846.           the following:
  847.  
  848.           PAL
  849.           2
  850.           0 0 0
  851.           255 255 255
  852.  
  853.           then:
  854.  
  855.           alchemy -g sample.jpg -f bw.pal
  856.  
  857.           (Or, you could have said alchemy -g sample.jpg -b -c2, but that
  858.           wouldn't have demonstrated the -f option).
  859.  
  860.           To view the resulting file in 320x200x256 mode, scaling the image
  861.           to fit the display:
  862.  
  863.           alchemy -V -V sample.gif
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 15
  872.  
  873.  
  874.  
  875.                           Details on Supported File Formats
  876.  
  877.  
  878.           Image Alchemy currently has support for the image file formats
  879.           listed below.  Where we know of restrictions or limitations they
  880.           are listed.  If you have trouble reading in and image in one of
  881.           the file formats we claim to support please contact us (see What
  882.           if Image Alchemy Messes Up, below).
  883.  
  884.           Image Alchemy identifies the type of file being read by checking
  885.           various magic numbers and other information that varies from
  886.           format to format.  It is possible for Image Alchemy to
  887.           incorrectly identify a file; if this happens please contact us.
  888.  
  889.  
  890.           .BMP      Windows BitMaP
  891.                     Microsoft Corporation
  892.                     Reads and writes 1, 4, 8, and 24 bit files.  Reads and
  893.                     writes RGB (raw), RLE4, and RLE8 files.
  894.                     Since no Windows 3.0 software we have (including the
  895.                     Windows 3.0 supplied utilities) can read nor write RLE4
  896.                     or RLE8 files, writing RLE compressed files is not
  897.                     recommended because that option has not been tested
  898.                     (Alchemy can read RLE files that it wrote, but that
  899.                     isn't a very significant test).
  900.  
  901.  
  902.           .EPI      Encapsulated PostScript
  903.           .EPSI     Adobe Systems Incorporated
  904.                     Output only.
  905.                     Writes Encapsulated Postscript files.  If the output
  906.                     file is grayscale, it will work with any PostScript
  907.                     device (grayscale output can be forced with the -b and
  908.                     -8 options).  If it's truecolour, then the CMYK
  909.                     extensions or a level 2 device is required.  For
  910.                     paletted files, a level 2 device is always required.
  911.                     Colour files can be forced to produce EPS files
  912.                     requiring only the CMYK extensions by using the -24
  913.                     option.
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 16
  930.  
  931.  
  932.  
  933.           .JPG      Handmade Software JPEG Files
  934.                     Handmade Software, Inc.
  935.                     Joint Photographic Experts Group (JPEG) JPEG-8-R8 draft
  936.                     standard.
  937.                     Reads and writes baseline JPEG with YCbCr CCIR-601
  938.                     colour space, interleaved components, Huffman or
  939.                     Arithmetic encoded.  Image Alchemy can read files with
  940.                     any component subsampling up to 4x4; it always writes
  941.                     2h:1v 1h:1v 1h:1v.  For grayscale images, it uses a
  942.                     single component.  Image Alchemy can only recognize
  943.                     grayscale files if the input is either paletted or 8
  944.                     bit grayscale.  Image Alchemy Huffman encoded JPEG
  945.                     files comply with the industry standard `JFIF'
  946.                     interchange format.
  947.  
  948.                     Grayscale images that have been JPEG compressed will
  949.                     decompress as paletted images (with a 256 level
  950.                     grayscale as a palette); others will be 24 bit.
  951.  
  952.                     JPEG files can be Huffman or Arithmetic encoded.
  953.                     Arithmetic encoding has the advantage of making the
  954.                     file approximately 20% smaller, but has the
  955.                     disadvantage of taking approximately 10% longer to
  956.                     compress and decompress and the resulting file will no
  957.                     longer be JFIF standard.
  958.  
  959.  
  960.           .IFF      Interchange File Format/InterLeaved Bit Map
  961.           .LBM      Commodore-Amiga Corp.
  962.                     Reads 1 through 8 bit, 24 bit, and Ham images; writes 1
  963.                     through 8 bit and 24 bit images.  If you're writing an
  964.                     Ilbm file for use on an Amiga, you probably want to
  965.                     write either a paletted file with 32 colours or a 24
  966.                     bit file.  24 bit Ilbm files can then be converted to
  967.                     one of the Amiga specific display modes with various
  968.                     third-party utilities.
  969.  
  970.  
  971.           .GIF      Graphics Interchange Format
  972.                     CompuServe, Incorporated.
  973.                     Reads and writes 1 bit through 8 bit GIF87A files,
  974.                     reads 1 through 8 bit GIF89A files (discarding all but
  975.                     the first image).  Reads both non-interleaved and
  976.                     interleaved files;  writes non-interleaved files.
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 17
  988.  
  989.  
  990.  
  991.           .PAL      HSI Palette Files
  992.                     Handmade Software, Inc.
  993.                     Contain only Palette Information.
  994.                     Useful in conjunction with the -f option (see above).
  995.                     PAL files are ASCII files which can be edited with a
  996.                     text editor.
  997.  
  998.                     The PAL file format:  the first line contains the
  999.                     letters "PAL", the next line contains an integer
  1000.                     indicating the number of palette entries, the rest of
  1001.                     the file consists of lines of 3 numbers each (separated
  1002.                     by spaces), representing the red, green, and blue
  1003.                     values for each of the colours (the numbers vary
  1004.                     between 0 and 255;  0 0 0 is black, 255 255 255 is
  1005.                     white, 255 0 0 is bright red, etc.).  See the Examples
  1006.                     section above for a sample PAL file.
  1007.  
  1008.                     Converting a .PAL file to another image format is
  1009.                     allowed but doesn't make much sense (since there won't
  1010.                     be any image data).
  1011.  
  1012.  
  1013.           .PCL      HP Printer Command Language
  1014.                     Hewlett-Packard Company
  1015.                     Reads and writes 1 bit files (PCL files must be 1 bit,
  1016.                     black and white;  if you attempt to write out any other
  1017.                     file type Alchemy will automatically switch to that
  1018.                     mode).
  1019.                     Only pays attention to raster images in the file;
  1020.                     attempts to skip everything else.  Due to the enormous
  1021.                     number of options allowed in PCL files this option has
  1022.                     not been thoroughly tested.  See the Answers to
  1023.                     Frequently Asked Questions section below for more
  1024.                     information.
  1025.  
  1026.  
  1027.           .PCX      PC Paintbrush
  1028.                     ZSoft Corp.
  1029.                     Reads and writes 1, 4, and 8 bit images.
  1030.                     PCX format files are often written out incorrectly;
  1031.                     Alchemy attempts to figure out what is wrong and make
  1032.                     intelligent decisions (things Alchemy can deal with
  1033.                     include PCX files without palettes, files missing the
  1034.                     last line of image data, and files with illegal (and
  1035.                     incorrect) combinations of bits per pixel and planes).
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 18
  1046.  
  1047.  
  1048.  
  1049.           .PICT     Macintosh PICT format
  1050.           .PIC      Apple Computer, Inc.
  1051.                     Reads 1, 2, 4, 8, 16, and 32 bit images; writes 1, 2,
  1052.                     4, 8, and 32 bit images.
  1053.                     Only pays attention to pixMaps in the pict; attempts to
  1054.                     skip everything else.  Due to the enormous number of
  1055.                     options allowed in PICT files this option has not been
  1056.                     thoroughly tested.  See the Answers to Frequently Asked
  1057.                     Questions section below for more information.
  1058.  
  1059.  
  1060.           .PBM      Portable BitMap
  1061.           .PGM      Portable GrayMap
  1062.           .PPM      Portable PixelMap
  1063.           .PNM      Portable aNyMap
  1064.                     Jef Poskanzer's Portable BitMap Package
  1065.                     Reads and writes 1, 8 (grayscale only), and 24 bit
  1066.                     RAWBITS (binary) images.  For more information on the
  1067.                     Portable BitMap Package see the References section
  1068.                     below.
  1069.  
  1070.  
  1071.           .RAST     Sun Raster Files
  1072.           .RAS      Sun Microsystems, Inc.
  1073.                     Reads 1, 8, 24, and 32 bit images.  Writes 1, 8, and 32
  1074.                     bit images.
  1075.                     Supports Standard, BGR, RGB, and Byte Encoded (RLE)
  1076.                     files.
  1077.  
  1078.  
  1079.           .RAW      HSI Raw Files
  1080.                     Handmade Software Inc.
  1081.                     Reads and writes 8 and 24 bit images.  Used internally
  1082.                     by Image Alchemy when converting between certain
  1083.                     combinations of other formats.  Can also be explicitly
  1084.                     read and written.  If you are interested in adding HSI
  1085.                     Raw support to your software please contact us for more
  1086.                     information.
  1087.  
  1088.  
  1089.           .SGI      Silicon Graphics Image Files
  1090.                     Silicon Graphics, Inc.
  1091.                     Reads and writes 1, 8 (grayscale only), and 24 bit
  1092.                     files.  Reads Verbatim (uncompressed) and RLE files.
  1093.                     Write uncompressed files.
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 19
  1104.  
  1105.  
  1106.  
  1107.           .TGA      Targa Files
  1108.                     Truevision Corp.
  1109.                     Reads 8, 15, 16, 24, and 32 bit images, ignoring the
  1110.                     alpha channel for 32 bit images; writes 8 and 24 bit
  1111.                     images.  8 bit output files are paletted unless the
  1112.                     palette is all gray, in which case the output is a
  1113.                     grayscale file.
  1114.  
  1115.  
  1116.           .TIFF     Tagged Image File Format Files
  1117.           .TIF      Microsoft Corp. and Aldus Corp.
  1118.                     Reads 1, 4, 8, 24, and 32 bit images (ignoring the
  1119.                     alpha channel for 32 bit images); writes 1, 4, 8, and
  1120.                     24 bit images.  Can read TIFF class B, G, R, and some P
  1121.                     (those with 1, 4, or 8 bits per pixel) files.  Writes
  1122.                     class B, G, P, and R files, depending on the input file
  1123.                     and options specified.
  1124.  
  1125.                     1,4, and 8 bit output files are paletted unless the
  1126.                     palette is all gray, in which case the output is a
  1127.                     grayscale file.  Output compression types supported are
  1128.                     raw, LZW, PackBits, Group III fax, Group IV fax, PICIO,
  1129.                     and SGI RLE.  Input compression types supported are
  1130.                     raw, LZW, PackBits, Group III fax, Group IV fax, CCITT
  1131.                     RLE (both byte and word aligned), NeXT, Thunderscan,
  1132.                     PICIO, and SGI RLE.
  1133.  
  1134.  
  1135.           General Notes:
  1136.  
  1137.           Image Alchemy automatically recognizes and reads MacBinary files
  1138.           (MacBinary files are generated when you accidently leave
  1139.           MacBinary mode on when transferring a file from a Macintosh).
  1140.  
  1141.           Gamma, aspect ratio, and resolution values are preserved whenever
  1142.           possible.
  1143.  
  1144.           Colour correction tables are currently ignored.
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 20
  1162.  
  1163.  
  1164.  
  1165.                                 Colour and Dithering
  1166.  
  1167.  
  1168.           Colour images are normally stored in one of two ways: as an array
  1169.           of direct colour values (usually red, green, and blue) (referred
  1170.           to as a truecolour file in this document) or as an array of
  1171.           indices into a colourmap which contains red, green, and blue
  1172.           colour values (referred to as a paletted file in this document).
  1173.           The only reason for the existence of paletted images is that they
  1174.           take less memory, so the hardware to display them is cheaper.
  1175.           The dominance of paletted hardware is changing as the price of
  1176.           memory and the processing power it takes to update large amounts
  1177.           of memory at a reasonable speed drops (a Targa 32 board is an
  1178.           example of a truecolour board, a VGA board is an example of a
  1179.           paletted board).  However, until truecolour graphics devices
  1180.           become the norm, there's a need to convert images from truecolour
  1181.           to paletted.  This conversion is done in two steps: the first is
  1182.           to generate a palette for use by the image;  the second is to map
  1183.           the image to the new palette.
  1184.  
  1185.           Image Alchemy supports two methods of generating a palette.  The
  1186.           simplest and fastest method is to use a palette containing
  1187.           colours which are uniformly distributed in the RGB cube, referred
  1188.           to as a uniform palette.  This has the advantage that it's fast
  1189.           and the same palette can be used for any image; the primary
  1190.           disadvantage is that most images don't contain colours from
  1191.           everywhere in the RGB cube, so this palette wastes entries
  1192.           representing colours that aren't needed for the particular image
  1193.           being converted.
  1194.  
  1195.           Image Alchemy also supports Heckbert's median cut algorithm.
  1196.           This algorithm first builds a three dimensional histogram
  1197.           indicating how popular any given colour in the RGB cube is in the
  1198.           image being converted.  It then proceeds to subdivide this
  1199.           histogram cube (by dividing boxes in half) until it has created
  1200.           as many boxes as there are palette entries.  The decision as to
  1201.           where to divide a box is based on the distribution of colours
  1202.           within the box.  This algorithm attempts to create boxes which
  1203.           have approximately equal popularity in the image.  Palette
  1204.           entries are then assigned to represent each box.  There are other
  1205.           methods of generating a palette from an image, but Heckbert's
  1206.           algorithm is generally regarded as the best tradeoff between
  1207.           speed and quality.
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 21
  1220.  
  1221.  
  1222.  
  1223.           You can change the method used to select a colour for each box by
  1224.           use of the -z options.  The default method is to use the mean of
  1225.           all the colours in the box (this gives the mathematically correct
  1226.           result).  However for some images slightly better results can be
  1227.           obtained by using the center of the box (without regard to where
  1228.           the pixels are in the box).  For images with a very small number
  1229.           of different colours (less than 16) better results can be
  1230.           obtained by using a corner of the box (the boxes tend to be large
  1231.           when reducing an image to a small number of colours; picking a
  1232.           colour near the center of the box will give you muddy colours, by
  1233.           using the corner of the box you get more saturated colours).
  1234.  
  1235.           The next step is to map the image to the new palette; this is
  1236.           where dithering becomes important.  The simplest approach is to
  1237.           map every colour in the original image to the palette entry which
  1238.           is closest to it (which Image Alchemy does if you specify no
  1239.           dithering).  However, since the palette entries generally
  1240.           represent several different colours in the original image, this
  1241.           results in colour banding (where areas of smooth colour changes
  1242.           in the original become areas of one solid colour in the paletted
  1243.           version).  This can be alleviated by dithering (or modulating)
  1244.           the image data such that any given pixel may not be mapped to
  1245.           it's closest palette entry, but the average over some area of the
  1246.           image will be closer to the correct colour than it would
  1247.           otherwise be.  Image Alchemy uses a class of algorithms called
  1248.           "error-diffusion" to do dithering.  These algorithms work by
  1249.           using the closest palette entry to a colour and then distributing
  1250.           the error (the difference between the desired colour and the
  1251.           chosen palette entry) to the pixels below and to the right of the
  1252.           current pixel.  This process is repeated for every pixel in the
  1253.           image, using the colour values which have been modified due to
  1254.           the error from previous pixels.
  1255.  
  1256.           For more information on Heckbert median cut and dithering see the
  1257.           appropriate reference listed in the References section below.
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 22
  1278.  
  1279.  
  1280.  
  1281.                               What is JPEG Compression?
  1282.  
  1283.  
  1284.           J.P.E.G. stands for the "Joint Photographic Experts Group".  This
  1285.           is a group of experts who defined a standard compression scheme
  1286.           for still images, commonly called JPEG Compression.  Currently
  1287.           the standard is still in draft form.  The standard will hopefully
  1288.           be finalized in 1991.
  1289.  
  1290.           JPEG Compression consists of a series of reasonably complex
  1291.           mathematical operations.  These include colour space conversion,
  1292.           Discrete Cosine Transform, quantization, and Huffman or
  1293.           Arithmetic encoding.  After these steps you end up with an image
  1294.           which takes fewer bits to store than you started out with.
  1295.  
  1296.           However, when you decompress a JPEG compressed image you end up
  1297.           with an image that is not quite the same as the original image
  1298.           (which is why JPEG Compression is referred to as "lossy").  You
  1299.           might well ask why anyone would want to compress an image using a
  1300.           lossy technique?  It turns out that lossy compression ratios are
  1301.           much better than lossless compression ratios and the loss is
  1302.           generally very small.  And, in fact, every operation of
  1303.           converting an image is lossy (the original photographic or
  1304.           electronic process which captured the image was lossy, scanning
  1305.           or digitizing the image was lossy, displaying the image on a
  1306.           monitor is lossy, and printing the image is lossy).
  1307.  
  1308.           JPEG compression typically involves the following steps:
  1309.  
  1310.           1.   The image is converted to a colourspace with separate
  1311.                luminance and chrominance (Image Alchemy uses CCIR-601
  1312.                YCbCr).  This is done because the luminance information (Y)
  1313.                is far more important to the human eye than the chrominance
  1314.                information (Cb and Cr); by separating them it's possible to
  1315.                compress the chrominance information more than the luminance
  1316.                information.  This step is not specified in the JPEG draft
  1317.                (it doesn't discuss colourspace at all), but is standard
  1318.                practice.
  1319.  
  1320.           2.   The luminance and chrominance information are seperately
  1321.                transformed to the frequency domain using a discrete cosine
  1322.                transform acting on 8x8 pixel blocks (the chrominance
  1323.                information may be subsampled first).
  1324.  
  1325.           3.   The transformed data is quantized (which simply means some
  1326.                information is thrown away).  The samples representing
  1327.                higher frequencies are generally quantized more than those
  1328.                representing low frequencies.
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 23
  1336.  
  1337.  
  1338.  
  1339.           4.   This quantized data is then compressed using an entropy
  1340.                encoder (Huffman and Arithmetic coding are allowed by the
  1341.                draft JPEG standard; only Huffman is allowed by the JFIF
  1342.                standard).
  1343.  
  1344.           This data then corresponds the JPEG Interchange Format and is
  1345.           ready to be stored in a file.  However the JPEG Interchange
  1346.           Format does not include enough information to actually be able to
  1347.           convert the file back to an image.  Specifically the colourspace
  1348.           used and the aspect ratio or the resolution of the image are not
  1349.           included.  Until recently there was no standard way of putting
  1350.           this information in a JPEG file.  On March 1, 1991
  1351.           representatives of several JPEG hardware and software developers
  1352.           (including C-Cube, Radius, NeXT, Storm Tech., the PD JPEG group,
  1353.           Sun, and Handmade Software) got together at C-Cube and
  1354.           established the JPEG File Interchange Format (JFIF).  If you
  1355.           would like more information on the JFIF standard please contact
  1356.           us.
  1357.  
  1358.  
  1359.           If you are interested in getting a copy of the the current draft
  1360.           JPEG standard contact:
  1361.                X3 Secretariat
  1362.                Computer and Business Equipment Manufacturers Institute
  1363.                311 First Street NW, Suite 500
  1364.                Washington, DC  20001-2178
  1365.  
  1366.                The last time we talked with them the charge was $8.00,
  1367.                including shipping.
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 24
  1394.  
  1395.  
  1396.  
  1397.                         Answers to Freqently Asked Questions
  1398.  
  1399.  
  1400.           Q:   When I convert a gray-scale Gif file to a JPEG file and then
  1401.                back to a Gif file the final Gif file is twice the size of
  1402.                the original.  Why is this?
  1403.  
  1404.           A:   The input Gif file was probably a 16 or 32 colour gray scale
  1405.                file.  When you converted it to a JPEG file the number of
  1406.                colours in the file was lost (JPEG gray scale files are
  1407.                always 256 colour).  When the JPEG file was converted back
  1408.                to a Gif file Alchemy assumed you wanted 256 colours in the
  1409.                file.  And a 256 colour Gif file is bigger than a 16 colour
  1410.                Gif file (because of the way Gif compression works).  To
  1411.                prevent this you can use a -c32 option in the command line;
  1412.                this forces Image Alchemy to use that many colours for the
  1413.                output file.
  1414.  
  1415.  
  1416.           Q:   Why can't PHIPS read the Targa file I wrote with Image
  1417.                Alchemy?
  1418.  
  1419.           A:   Some software which reads Targa files can not handle
  1420.                compressed files.  By using -a0 instead of just -a, Image
  1421.                Alchemy will write out an uncompressed Targa file.  In
  1422.                addition, some software can read true colour Targa files,
  1423.                but can not read paletted or gray scale files.  Image
  1424.                Alchemy can be forced to write out a true colour file by
  1425.                using the -24 option.
  1426.  
  1427.  
  1428.           Q:   Why is decompressing or compressing a JPEG image so slow?
  1429.  
  1430.           A:   There are a large number of calculations that have to be
  1431.                done during JPEG compression.  This is an inherent
  1432.                limitation of JPEG compression.  Image Alchemy has been
  1433.                optimized quite a bit to reduce the number of calculations,
  1434.                and we are working to further reduce the number of
  1435.                calculations.  If you are transferring files over modems or
  1436.                storing them on slow media (tape) the compression times are
  1437.                usually more than made up for by the decrease in
  1438.                transmission or retrieval times.
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 25
  1452.  
  1453.  
  1454.  
  1455.           Q:   Why can't my favorite desktop publishing package read the
  1456.                TIFF file I wrote with Image Alchemy?
  1457.  
  1458.           A:   TIFF is an extremely versatile standard; it can handle
  1459.                anything from 1 bit images to full colour images with an
  1460.                alpha channel and TIFF allows many different types of
  1461.                compression.  Unfortunately this versatility means that it's
  1462.                difficult for a single piece of software to be able to read
  1463.                in every valid TIFF file.
  1464.  
  1465.                If the software specifies the classes of TIFF it can read,
  1466.                you can force Alchemy to write out a specific TIFF class by
  1467.                using the following options:
  1468.                   class B: -8 -b -c2 -t2     (preferred if input is
  1469.                        bilevel)
  1470.                   class G: -8 -b -t1         (preferred if input is
  1471.                        grayscale)
  1472.                   class P: -8 -t1            (preferred if input is
  1473.                        paletted)
  1474.                   class R: -24 -t1           (preferred if input is true
  1475.                        colour)
  1476.  
  1477.                If the supported classes are not specified experiment with
  1478.                various combinations of -24, -8, -b, and -cn.  In this case
  1479.                it is usually best to use no compression (-t0) while
  1480.                experimenting with the other options, as many TIFF readers
  1481.                have difficulty with compressed files.  When you find a set
  1482.                of options that works, then you can try various compression
  1483.                modes to save space.  Be aware that using -b will force the
  1484.                output file to be gray scale and you will lose all the
  1485.                colour information in the file (most DTP programs only have
  1486.                support for gray scale TIFF files).
  1487.  
  1488.                You may also have to use the -Dn -Dn option to specify the
  1489.                resolution of the image (this is especially true when
  1490.                converting from a file format which does not have a value
  1491.                for image resolution).  You can generally tell if this is
  1492.                necessary because the program you are using to read in the
  1493.                TIFF file will claim that the file is unreasonably large or
  1494.                small.  Generally, if you are using a 300 DPI Laser Printer
  1495.                you want to make the TIFF file 300DPIx300DPI (-D 300 -D
  1496.                300).
  1497.  
  1498.                If you would like further information specific to using
  1499.                Image Alchemy with your word processor or desktop publishing
  1500.                program please contact us; we will be maintaining a list of
  1501.                how to make Alchemy work with other software packages.
  1502.                Similarly if you figure out how to import files into a
  1503.                specific package let us know and we will add your tips to
  1504.                our documentation.
  1505.  
  1506.  
  1507.  
  1508.  
  1509.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 26
  1510.  
  1511.  
  1512.  
  1513.           Q:   When I convert a 32 bit Targa file to a PCX file and then to
  1514.                a JPEG file it doesn't look nearly as good as if I convert
  1515.                the Targa File directly to the JPEG file.  What can I do to
  1516.                maintain high quality in JPEG compressed files?
  1517.  
  1518.           A:   When the Targa file was converted to the PCX file Image
  1519.                Alchemy had to reduce the number of colours in the file (the
  1520.                original Targa File had up to 16 Million Colours, PCX files
  1521.                are limited to 256 colours).  This step is known as colour
  1522.                quantization (Image Alchemy uses the Heckbert Median Cut
  1523.                method for quantization, see the Colour and Dithering
  1524.                section above).  The difficulty with colour quantization is
  1525.                that it leaves artifacts known as colour banding.  To reduce
  1526.                this phenomenon Image Alchemy dithers the image (you can see
  1527.                the effect of colour banding by turning off dithering by
  1528.                using the -d option).  Unfortunately a dithered image does
  1529.                not JPEG compress very well (dithering adds a lot of high-
  1530.                frequency information to an image; JPEG compression attempts
  1531.                to remove much of that information).  In addition JPEG
  1532.                images are always continuous colour images, so when the JPEG
  1533.                file is decompressed it has to be colour quantized and
  1534.                dithered again.  Dithering a previously dithered image
  1535.                reduces the quality even more.  The solution is to use the
  1536.                best starting quality you can for JPEG compression, ideally
  1537.                a continuous tone image.  The compressed image size will be
  1538.                smaller than if you had started with a paletted image and
  1539.                the quality will be better.
  1540.  
  1541.  
  1542.           Q:   When I view a JPEG compressed image on my VGA board the
  1543.                quality isn't nearly as good as when I first convert it to a
  1544.                Gif file and then view it.  Why is this?
  1545.  
  1546.           A:   To save time Alchemy automatically uses a uniform palette
  1547.                when you are just viewing the image.  When converting to a
  1548.                different file format Alchemy does Heckbert quantization to
  1549.                generate a palette.  The difference in image quality is the
  1550.                difference between using a uniform palette and an optimum
  1551.                palette.  See the Colour and Dithering section above for
  1552.                more information on palette generation.
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 27
  1568.  
  1569.  
  1570.  
  1571.           Q:   I've converted a Mac PICT file to a Gif file, but the Gif
  1572.                file is missing some or all of the information that was in
  1573.                the PICT file.  What happened to it?
  1574.  
  1575.           A:   PICT files are a combination of drawing commands (such as
  1576.                lines, rectangles, and circles) and raster areas (called
  1577.                pixMaps).  Alchemy can only read the raster portion of the
  1578.                files.  Programs such as MacDraw and MacDraft write out
  1579.                files with drawing commands, programs such as MacPaint write
  1580.                out files which are entirely raster areas (pixMaps), and
  1581.                some programs, such as SuperPaint can write out files which
  1582.                are either or a combination of both.  If you are using such
  1583.                a program check the documentation on how to write out files
  1584.                in "paint" mode.
  1585.  
  1586.  
  1587.           Q:   I've converted an HP PCL file to a Gif file, but the Gif
  1588.                file is missing some or all of the information that was in
  1589.                the PCL file.  What happened to it?
  1590.  
  1591.           A:   PCL files have the same problem as PICT files (see above);
  1592.                they are a combination of drawing commands (such as lines
  1593.                and rectangles) and raster areas (called rasters) and
  1594.                Alchemy can only convert the raster areas in PCL files.  In
  1595.                addition they contain a lot of font and text information,
  1596.                which is also lost.  Unfortunately there isn't any general
  1597.                way to preserve this data.
  1598.  
  1599.                One way which works under Microsoft Windows 3.0 is to
  1600.                install Adobe Type Manager (ATM).  ATM automatically
  1601.                intercepts any text commands and converts them to rasters.
  1602.                And in fact, the standard Windows 3.0 HP PCL driver only
  1603.                generates rasters.  So the file will appear in its entirety
  1604.                when converted by Alchemy.  Contact us if you want further
  1605.                information on using Alchemy with Windows 3.0.
  1606.  
  1607.  
  1608.           Q:   I keep getting "Out of Memory trying to ..." messages.
  1609.                Help!
  1610.  
  1611.           A:   Image Alchemy is running of of memory.  First attempt to
  1612.                maximize the amount of memory available by removing as may
  1613.                TSRs as you can.  If this doesn't help please contact us
  1614.                with the following information: your computer configuration
  1615.                (amount of available memory, size of hard disk), operating
  1616.                system version, and what you are trying to do (input file
  1617.                information (size of image and type of file) and options
  1618.                specified).  Alchemy can generally convert images as large
  1619.                as 2000 pixels across and an infinite number of pixels down.
  1620.                However there are certain conversions which require more
  1621.                memory than others.
  1622.  
  1623.  
  1624.  
  1625.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 28
  1626.  
  1627.  
  1628.  
  1629.  
  1630.           Q:   Why can't Image Alchemy read in JPEG files produced by
  1631.                Kodak's ColorSqueeze (or Sun's VFCtool)?
  1632.  
  1633.           A:   The JPEG standard is still in draft form.  Until it is a
  1634.                mature standard various manufacturer's will implement
  1635.                different versions of it.  As of March 1, 1991 Image Alchemy
  1636.                currently supports the JFIF format and should work with any
  1637.                other JPEG software which also claims JFIF compatibility.
  1638.                If other software you are using claims to support the JFIF
  1639.                format and you are having trouble please contact us.  If the
  1640.                other software does not support JFIF contact the
  1641.                manufacturer and tell them they should send you an update
  1642.                which supports JFIF (you can tell them to contact us if they
  1643.                need a copy of the JFIF standard).
  1644.  
  1645.  
  1646.           Q:   I told Alchemy to convert a PCX file to an 8 bit Gif file
  1647.                (using the -8 option).  Yet when I get statistics on the
  1648.                file (using -x) Alchemy reports the file has 16 colours?
  1649.  
  1650.           A:   Alchemy will always store the file using the smallest bits-
  1651.                per-pixels allowable for the given image (this results in
  1652.                the smallest possible file).  In this case the input file
  1653.                only had 16 colours in it.
  1654.  
  1655.                Things can get more unpredictable with formats such as Sun
  1656.                Raster (which require 1 bit files to be black and white) and
  1657.                SGI (which requires 8 bit files to be grayscale).  In these
  1658.                cases Alchemy will always do the best it can (giving you a
  1659.                warning message if it does something which may surprise you
  1660.                later).
  1661.  
  1662.  
  1663.  
  1664.  
  1665.  
  1666.  
  1667.  
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 29
  1684.  
  1685.  
  1686.  
  1687.           Q:   I converted a PCX file with 16 colours to a 16 shade gray
  1688.                TIFF file using the -b and -p options.  The 16 colour PCX
  1689.                file had some shades of gray in it which were changed in the
  1690.                TIFF file.  How can I prevent this?
  1691.  
  1692.           A:   The short answer is:  you can't.  The long answer is:  there
  1693.                is a work around.
  1694.  
  1695.                The problem is that gray-scale TIFF files have a uniformly
  1696.                spaced gray palette (this is required as part of the TIFF
  1697.                standard).  So if you create a 16 shade gray TIFF file it
  1698.                will have the following shades of gray in it: 0, 17, 34, 51,
  1699.                68, 85, ..., 255.  However the 16 colour PCX file you
  1700.                started with probably didn't have those exact colours in it
  1701.                (for example, PCX files written out by Windows 3.0 Paint
  1702.                have shades of gray which correspond to 0, 128, 192, and
  1703.                255).  So Alchemy did the best it could and matched the
  1704.                input colours to the output colours.
  1705.  
  1706.                The solution is to tell Alchemy to write out a 256 colour
  1707.                gray scale TIFF file (which you do by adding a -c256 to the
  1708.                -b and -t options).  This file still has a uniform gray
  1709.                palette; but that palette now contains every colour:  1, 2,
  1710.                3, 4, ..., 255.  So Alchemy can map the colours 128 and 192
  1711.                to their exact match.  This does have the disadvantage of
  1712.                making the resulting 256 colour TIFF file twice as large as
  1713.                the 16 colour TIFF file; but this is the only way to
  1714.                guarantee that Alchemy can find an exact match for all the
  1715.                shades of gray in the input file.
  1716.  
  1717.  
  1718.           Q:   Why do you only allow specifying image resolution in Dots
  1719.                Per Inch?  Don't you realize that most of the world is
  1720.                metric?
  1721.  
  1722.           A:   Yes, we do realize that the entire world, with the exception
  1723.                of the United States and Great Britain, claims to use the
  1724.                metric system exclusively (and Great Britain will presumably
  1725.                change in 1992).  However this isn't true.  A laser printer
  1726.                manufactured in Japan is still 300 dots per inch (not
  1727.                11.811... dots per mm) and a 19 inch monitor sold in Europe
  1728.                is called a 19 inch monitor (actually a 19 inch monitor is
  1729.                called a 20 inch monitor in Europe, they measure the total
  1730.                picture tube diagonal, not just the viewing area).  And this
  1731.                even applies to non high-tech things:  the wheels on my
  1732.                German car are 16 inches in diameter (though the tires I buy
  1733.                for it are 225 mm wide, even in the United States).
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 30
  1742.  
  1743.  
  1744.  
  1745.           Q:   I am using Alchemy to display a 320x400 IFF image created by
  1746.                an Amiga.  When I use just the -v option the image comes out
  1747.                tall and skinny.  When I use the -v -V option, which is
  1748.                supposed to correct the aspect ratio, instead of things
  1749.                getting better they get worse (the image is even skinnier).
  1750.                What's going on?
  1751.  
  1752.           A:   As near as we can tell Amiga software has a different idea
  1753.                of what aspect ratio is than the rest of the world.
  1754.  
  1755.                For displays aspect ratio is defined as the ratio of the
  1756.                width of a single pixel to the height of a single pixel.  So
  1757.                if you have square pixels (which you do on a standard
  1758.                monitor in 640x480 mode) the aspect ratio is 1 to 1 (usually
  1759.                written as 1:1).  When you change display modes you are
  1760.                generally not changing the height and width of the total
  1761.                display area; what is changing is the width and height of
  1762.                each pixel, so the aspect ratio changes.  For example, a
  1763.                640x400 display has an aspect ratio of 1:1.2 (that means
  1764.                each pixel is 1.2 times as tall as it is wide (which makes
  1765.                sense since 480/400 equals 1.2)).  A 640x200 display
  1766.                (remember IBM CGA graphics mode?) has an aspect ratio of
  1767.                1:2.4 (which is a pretty extreme aspect ratio).  Now this is
  1768.                where it gets interesting.
  1769.  
  1770.                The aspect ratio number stored in Amiga IFF files for
  1771.                320x400 images is 1:1.1, which means the pixels are 1.1
  1772.                times as tall as they are wide, so therefore the actual
  1773.                image should be the equivalent of a 320x440 image with
  1774.                square pixels.  And this is what Alchemy will attempt to
  1775.                display when you use the second -V (actually Alchemy never
  1776.                makes any dimension larger, so the actual image Alchemy
  1777.                displays is 291x400, which is the same ratio as 320x440).
  1778.                However this is obviously wrong, as you can tell when you
  1779.                actually look at an image.  As near as we can tell the
  1780.                actual aspect ratio of these images is 5:3 (the math we used
  1781.                to come up with this number is 640/320:480/400).  And in
  1782.                fact if you tell Alchemy to override the aspect ratio by
  1783.                using a -D 167 option (167 because 5/3*100 is 166.6666) the
  1784.                image displays correctly.  Why Amigas create images which
  1785.                claim they are 1:1.1 remains a mystery.
  1786.  
  1787.  
  1788.           Q:   Do you give multiple copy discounts?  Do you have site
  1789.                licenses?  Are you interested in licensing the source code?
  1790.  
  1791.           A:   Yes.  Yes.  Yes.  Contact us for more information.
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 31
  1800.  
  1801.  
  1802.  
  1803.                                    Version History
  1804.  
  1805.  
  1806.                                     v1.4 03/18/91
  1807.  
  1808.                      Released for Sun SPARC, Sun 3, and IBM PC.
  1809.  
  1810.           Format changes:
  1811.           Added Arithmetic coding and decoding for JPEG compression.
  1812.           Added 1 bit PCX file support.
  1813.           Added new compression types to Targa.
  1814.           Added PBM/PGM/PPM support.
  1815.           Added GIF89A support for reading.
  1816.           Added SGI support.
  1817.           Added Windows BMP support.
  1818.           Added writing Group III, Group IV, PICIO, and SGI RLE Tiff
  1819.           compression types.
  1820.           Added Encapsulated PostScript output.
  1821.           Added HP PCL support.
  1822.  
  1823.           Display option changes:
  1824.           Added support for Video 7, Trident, Tseng 4000, IBM 8514/A
  1825.           display boards.
  1826.           Added 320x200x256 display mode.
  1827.           Added image scaling during display (which allows display of the
  1828.           entire image on the screen and preserves aspect ratio).
  1829.           Center images on screen during displaying.
  1830.           During display the screen is now cleared to the darkest colour.
  1831.  
  1832.           Misc changes:
  1833.           Added image scaling
  1834.           Added conversion to monochrome images.
  1835.           Preserve and allow specification of aspect ratio or dots per
  1836.           inch.
  1837.           Added false colour palette conversion.
  1838.           Added optimized EGA image generation support.
  1839.           Added support for very large images.
  1840.           Added palette sorting, paletted swapping, and palette selection
  1841.           parameters.
  1842.           Added Stucki and Jarvis, Judice, & Ninke Dithering.
  1843.  
  1844.           Fixed Bugs:
  1845.           Writing certain 1 bit Sun Raster files
  1846.           Reading incorrectly written PCX files
  1847.           Reading 24 bit RLE compressed Sun Raster files
  1848.           Reading incorrectly written ILBM files.
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 32
  1858.  
  1859.  
  1860.  
  1861.                                     v1.3 02/05/91
  1862.  
  1863.                          Released for Sun SPARC and IBM PC.
  1864.  
  1865.           Added checking for supported VGA boards, warning if board is
  1866.           recognized but not supported.
  1867.  
  1868.           Fixed bug with reading and writing 8 bit Sun Raster files which
  1869.           have an odd width.
  1870.  
  1871.           Temporary files are now removed when program exits because of an
  1872.           error.
  1873.  
  1874.           Added support for reading Sun Run-Length-Encoded (RLE) files.
  1875.  
  1876.           Added reading support for interleaved GIF files.
  1877.  
  1878.           Added 8 bit RAW files.
  1879.  
  1880.           Added optional smoothing on JPEG reading.
  1881.  
  1882.           Added support for any colour component subsampling on JPEG
  1883.           reading.
  1884.  
  1885.           Targa files are now written bottom-up to make other Targa
  1886.           software happy.
  1887.  
  1888.           Added palette matching and PAL files.
  1889.  
  1890.           Made memory use more efficient (requiring less virtual memory on
  1891.           Suns and less overlay swapping on PCs).
  1892.  
  1893.           Numerous miscellaneous performance improvements, (dramatic for
  1894.           some conversions; hardly noticeable for others).
  1895.  
  1896.  
  1897.                                     v1.2 01/16/91
  1898.  
  1899.                         First release for Sun SPARC systems.
  1900.  
  1901.           Fixed several minor bugs (primarily aesthetic).
  1902.  
  1903.           Made PCX file identifying and reading more robust.
  1904.  
  1905.  
  1906.                                     v1.1 01/14/91
  1907.  
  1908.                               First release for MS-DOS.
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 33
  1916.  
  1917.  
  1918.  
  1919.                                  Coming Attractions
  1920.  
  1921.  
  1922.           A better user's manual (yeah!).
  1923.  
  1924.           A Macintosh Version (the Mac version is working except for the
  1925.           GUI (graphical user interface].
  1926.  
  1927.           Support for GUI (Windows 3.0 for the IBM and OpenLook 2.0 for
  1928.           Suns).
  1929.  
  1930.           Optimum Huffman table generation for JPEG writing.
  1931.  
  1932.           Support for TIFF files containing JPEG compressed data.
  1933.  
  1934.           Faster JPEG File reading and writing.
  1935.  
  1936.           Emphasizing flesh tones during palette generation (for both
  1937.           Uniform palettes and Heckbert generated palettes).
  1938.  
  1939.           Gamma, Brightness, and Contrast Adjustment.
  1940.  
  1941.           Wildcards for input filenames.
  1942.  
  1943.           Display of images on Targa boards on IBM PCs.
  1944.  
  1945.           Use of Expanded and/or Extended memory on IBM PCs for faster
  1946.           operation.
  1947.  
  1948.           Display of large images with scrolling (especially on PCs).
  1949.  
  1950.           Image Resizing (scaling and/or cropping).
  1951.  
  1952.           Binary versions for other machines (we have written what we
  1953.           consider very transportable code (the same source code compiles
  1954.           on IBM PCs, Macs, and Suns), the biggest limitation on generating
  1955.           new binaries is access to machines, if you can provide help in
  1956.           this regard please contact us).
  1957.  
  1958.           New file formats, including:
  1959.                Utah RLE
  1960.                QDV
  1961.                MTV
  1962.                BPX
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 34
  1974.  
  1975.  
  1976.  
  1977.                           What if Image Alchemy Messes Up?
  1978.  
  1979.  
  1980.           We have made every effort to insure that Image Alchemy can read
  1981.           all files in its supported formats.  However, because of poorly
  1982.           written standards and non-adherence to standards there are
  1983.           undoubtedly certain files that Image Alchemy does not read
  1984.           correctly.
  1985.  
  1986.           If you come across any files which Image Alchemy has trouble with
  1987.           please contact us with as much of the following information as
  1988.           you have:  version of Image Alchemy you are using, type of file,
  1989.           type of computer which generated it, name and version of software
  1990.           which wrote the file, size of image, and the number of colours in
  1991.           image.  We may ask you to send us the file so that we can figure
  1992.           out what went wrong.  If you send us a file we will attempt to
  1993.           modify Image Alchemy so that it can read the file.  And if by
  1994.           some miracle we manage to get it to work, we will send you an
  1995.           updated copy of Image Alchemy.
  1996.  
  1997.           Similarly, if any files that Image Alchemy writes can not be read
  1998.           by other software we want to know that also.  Since we do not own
  1999.           a copy of every software package we may ask you to send us a copy
  2000.           of a file that can be read by that package; we will then compare
  2001.           that to a file written out by Image Alchemy to determine what the
  2002.           problem is.
  2003.  
  2004.           By the way, contact us even if you are not a registered user.  We
  2005.           figure the best way to get you to register is to be nice to you.
  2006.  
  2007.  
  2008.  
  2009.  
  2010.                                      Trademarks
  2011.  
  2012.           Image Alchemy is a trademark of Handmade Software, Inc.
  2013.  
  2014.           All other products or services mentioned, including: IBM PC AT,
  2015.           VGA, 8514/A, Paradise, Everex, Trident, Video 7, Tseng Labs,
  2016.           Wester Digital, MS-DOS, PC-DOS, SPARC, Sun, SPARCstation,
  2017.           SPARCserver, SunOS, Targa, PostScript, EPS, Encapsulated
  2018.           PostScript, Gif, ILBM, IFF, Macintosh, Silicon Graphics, SGI,
  2019.           PCX, TIFF, Windows, Windows BitMaP, EGA, PCL, HP, AI, PS/2, HAM,
  2020.           PC Paintbrush, MacBinary, PHIPS, ColorSqueeze, VFCtool, Amiga,
  2021.           CServe, and CompuServe, are trademarks, registered trademarks, or
  2022.           service marks of their respective companies or organizations.
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 35
  2032.  
  2033.  
  2034.  
  2035.                                      Disclaimer
  2036.  
  2037.           Handmade Software, Inc. makes no warranty of any kind, either
  2038.           expressed or implied, including but not limited to implied
  2039.           warranties of merchantability and fitness for a particular
  2040.           purpose.
  2041.  
  2042.           In no event shall Handmade Software, Inc. be liable for any
  2043.           errors contained herein or for incidental or consequential
  2044.           damages in connection with the furnishing, performance, or use of
  2045.           the Image Alchemy product or documentation.
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.  
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  
  2064.  
  2065.  
  2066.  
  2067.  
  2068.  
  2069.  
  2070.  
  2071.  
  2072.  
  2073.  
  2074.  
  2075.  
  2076.  
  2077.  
  2078.  
  2079.  
  2080.  
  2081.  
  2082.  
  2083.  
  2084.  
  2085.  
  2086.  
  2087.  
  2088.  
  2089.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 36
  2090.  
  2091.  
  2092.  
  2093.                                        Credits
  2094.  
  2095.  
  2096.           Sam Leffler
  2097.                Image Alchemy's TIFF I/O is based on libtiff which is
  2098.                Copyright by Sam Leffler and is used with his permission.
  2099.                Libtiff is available by anonymous ftp as
  2100.                ucbvax.berkeley.edu:pub/tiff/*.tar.Z or
  2101.                uunet.uu.net:graphics/tiff.tar.Z.
  2102.  
  2103.           John Bridges
  2104.                Image Alchemy's VGA display routines are based on VGAKIT,
  2105.                originally written by John Bridges.
  2106.  
  2107.           Marc Schneider
  2108.                Who provided assistance with the Sun implementation of Image
  2109.                Alchemy including Beta testing and answering questions about
  2110.                the internal format of Sun Raster files.
  2111.  
  2112.           Jack Waterman
  2113.                Who proofread the manual more times than anyone should have
  2114.                to read anything (any remaining misteaks are because we made
  2115.                changes after he read it for the final time).
  2116.  
  2117.  
  2118.  
  2119.                                      References
  2120.  
  2121.  
  2122.           Floyd-Steinberg Dithering
  2123.                Floyd-Steinberg, Stucki, and JJN dithering are described in
  2124.                "Digital Halftoning", by Robert Ulichnet, MIT Press.
  2125.  
  2126.           Heckbert Colour Quantization
  2127.                Originally described in "Color Image Quantization for Frame
  2128.                Buffer Display", SIGGRAPH '82 Proceedings, p. 297.
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.  
  2135.  
  2136.  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 37
  2148.  
  2149.  
  2150.  
  2151.           The following people have written image file conversion software
  2152.           similar to Image Alchemy.  Each of their packages is available
  2153.           via anonymous ftp.  These programs are only available as source
  2154.           code and generally require UNIX or one of its variants.
  2155.  
  2156.  
  2157.           Michael Mauldin - Fuzzy Pixmap Manipulation (FBM)
  2158.                Available by anonymous ftp as
  2159.                nl.cs.cmu.edu:/usr/mlm/ftp/fbm.tar.Z,
  2160.                uunet.uu.net:pub/fbm.tar.Z, and ucsd.edu:graphics/fbm.tar.Z.
  2161.  
  2162.           Jef Poskanzer - Portable BitMap (PBMPLUS)
  2163.                Available by anonymous ftp as
  2164.                expo.lcs.mit.edu:contrib/pbmplus.tar.Z and
  2165.                ftp.ee.lbl.gov:pbmplus.tar.Z.
  2166.                Jef also maintains the "Frequently Asked Questions" list in
  2167.                comp.graphics, which is a great source of information on
  2168.                graphics.
  2169.  
  2170.           Paul Raveling - Img Software Set
  2171.                Available by anonymous ftp as
  2172.                expo.lcs.mit.edu:contrib/img_1.3.tar.Z and
  2173.                venera.isi.edu:pub/img_1.3.tar.Z
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.  
  2203.  
  2204.  
  2205.    Image Alchemy v1.4    Copyright (c) 1990-91 Handmade Software Inc.    Page 38
  2206.  
  2207.                             Image Alchemy 1.4 Order Form
  2208.  
  2209.      Qty    Description                                       Price     Total
  2210.  
  2211.      _____  Image Alchemy for IBM PC AT on 3.5" Disk          $79.95  __________
  2212.  
  2213.      _____  Image Alchemy for IBM PC AT on 5.25" Disk         $79.95  __________
  2214.  
  2215.      _____  Image Alchemy for Sun 4 on 3.5" Disk              $79.95  __________
  2216.  
  2217.      _____  Image Alchemy for Sun 4 on 1/4" Tape              $99.95  __________
  2218.  
  2219.      _____  Image Alchemy for Sun 3 on 1/4" Tape              $99.95  __________
  2220.  
  2221.  
  2222.                                                        Sub-Total:     __________
  2223.  
  2224.                    California Residents add applicable sales tax:     __________
  2225.  
  2226.        Shipping and handling  ($4 UPS Ground, $8 UPS Second Day):     __________
  2227.        per copy            ($15 FedEx, $7 International AirMail)
  2228.  
  2229.                                                            Total:     __________
  2230.  
  2231.  
  2232.      Circle Payment form:       Check       MC       Visa       Amex
  2233.  
  2234.  
  2235.      Card #:______________________________________     Exp. Date:   ____________
  2236.  
  2237.  
  2238.      Signature: _____________________________________________________
  2239.  
  2240.      You must include the address your credit card bill is sent to as the
  2241.      billing address for MC/Visa/Amex orders.
  2242.  
  2243.      Ship to:                             Bill to:
  2244.      Name: ______________________________ Name: ________________________________
  2245.  
  2246.      Company: ___________________________ Company: _____________________________
  2247.  
  2248.      Address: ___________________________ Address: _____________________________
  2249.  
  2250.      City: ______________________________ City: ________________________________
  2251.  
  2252.      State: _________   Zip: __________   State: _________  Zip: ____________
  2253.  
  2254.      Phone: (______) __________________   Fax: (______) ____________________
  2255.  
  2256.  
  2257.      Mail:     Handmade Software, Inc.
  2258.                15951 Los Gatos Blvd., Suite 7
  2259.                Los Gatos, CA  95032
  2260.  
  2261.      Call:     +1 408 358 1292
  2262.      Fax:      +1 408 356 4143
  2263.      email:    hsi@netcom.COM
  2264.      email:    71330,3136 (CompuServe)